function animate(ele, target, callback) {
    clearInterval(ele.timer)

    ele.timer = setInterval(function() {
        var step = (target - ele.offsetLeft) / 10
        step = step > 0 ? Math.ceil(step) : Math.floor(step)
        if (ele.offsetLeft == target) {
            clearInterval(ele.timer)

            callback && callback()
        }

        ele.style.left = ele.offsetLeft + step + 'px'
    }, 10)
}